The invention relates generally to the field of/ semiconductor devices, particularly to gate arrays and, more particularly, to user-programmable or field programmable gate arrays (FPGAs).
Gate arrays are largely a matrix of integrated circuit structures, such as logic gates and their associated input and output structures which are isolated from one another. These logic gates are overlaid with vertical and horizontal wiring channels, which interconnect the logic gates and input and output structures in a pattern to perform a user-specified function.
Conventional, or mask-programmable, gate arrays (MPGAs) are created by building the integrated circuit up to the interconnect level which is left unspecified for the user. After the interconnect pattern is specified by the user, the wiring channels are created by depositing, masking, and etching the metal interconnection layers and contact layers to connect the logic gates and input and output structures to perform the user-specified function. The creation of the wiring channels, i.e., the programming of the device, is done by the manufacturer of the MPGA. Disadvantages of MPGAs include the long period between the design and specification of the desired interconnect pattern and receipt of the completed device, and the large nonrecurring engineering cost involved in each design and specification iteration, making MPGAs uneconomical in small production volumes.
To address some of these problems, there is another type of gate array, the field programmable gate array (FPGA). The FPGA is completely formed with a global set of vertical and horizontal wiring channels which are built into the device. However, these channels are electrically isolated from the logic structures, the input and output structures, and each other, by electrically programmable interconnect structures known as antifuses. The user programs these antifuses to define the specified interconnection pattern for his application, very rapidly and at his own facility. The elapsed time from design specification to receipt of completed parts is measured in minutes instead of months, and the nonrecurring engineering cost is also avoided.
However, FPGAs heretofore have had certain disadvantages in performance and use. Ideally antifuse structures should have a very high resistance (to form essentially an open circuit) and low capacitance in the unprogrammed ("off") state, as well as a very low resistance (to form essentially a closed circuit) in the programmed ("on") state. Furthermore, antifuse structures should occupy minimal layout area, with very short programming times, and programming voltages which are not so high as to require additional process complexity to accommodate the high programming voltages. Because present antifuse structures do not meet all these requirements, FPGA have suffered in performance.
A more subtle disadvantage is that the performance of present day antifuse structures has required that the architecture of the FPGA be modified so that the FPGA, once programmed, does not behave like an identically-programmed MPGA. Because of the large numbers of users already familiar with the architecture and usage of MPGAs, it is desirable that the FPGA match a MPGA in gate density and performance. The electrical and physical characteristics of present antifuse structures impede progress toward a high-performance, low-cost FPGA, which matches MPGA performance levels.
The present invention solves or substantially mitigates many of these problems of present antifuses.